.el-side-menu {
  outline: none;
  z-index: 10;
  font-size: 1rem;
  padding-left: 0;
  margin-bottom: 0;
  background: #fff;
  list-style: none;
  position: relative;
  display: inline-block;
  box-shadow: 0 1px 6px @shadow;
  border-right: 1px solid @border;
  overflow-y: hidden;
  .el-menu {
    position: relative;
  }
  .el-menu-item {
    cursor: pointer;
    line-height: 40px;
    position: relative;
    padding: 0 1.5384rem;
    color: darken(@midText, 10%);
    a, > * {
      z-index: 0;
      position: relative;
      display: inline-block;
      color: darken(@midText, 10%);
    }
    &:hover {
      color: @d_primary;
      &:before {
        content: '';
        z-index: 0;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: -999px;
        background: @l_primary;
      }
      a, > * {
        color: @d_primary;
      }
    }
    a, span {
      display: block;
      &.active {
        color: @d_primary;
      }
    }
  }
  .el-menu-item-group {
    .el-menu-item-group-title {
      color: @lightText;
      line-height: 35px;
      position: relative;
      padding: 0 1.5384rem;
    }
    .el-menu-item-group-list {
      padding-left: 10px;
      .el-menu-item {
        color: @midText;
        &:hover {
          color: @d_primary;
        }
        a, > * {
          color: @midText;
          &:hover {
            color: @d_primary;
          }
        }
        a, span {
          &.active {
            color: @d_primary;
          }
        }
      }
    }
  }
  .el-submenu {
    .el-submenu-title {
      line-height: 40px;
      position: relative;
      font-size: 1.1538rem;
      padding: 0 1.5384rem;
      color: darken(@midText, 10%);
      &:after {
        top: 1rem;
        content: "\f107";
        right: 1.5384rem;
        font-size: inherit;
        position: absolute;
        text-rendering: auto;
        display: inline-block;
        -webkit-font-smoothing: antialiased;
        font: normal normal normal 14px/1 FontAwesome;
        transition: transform .3s ease-in;
        -webkit-transition: -webkit-transform .3s ease-in;
      }
      &:hover {
        color: @d_primary;
      }
    }
    .el-submenu-list {
      padding-left: 15px;
      background: @l_default;
      .el-menu-item {
        color: @midText;
        a, > * {
          color: @midText;
          &:hover {
            color: @d_primary;
          }
        }
        &:hover {
          color: @d_primary;
        }
        a, span {
          &.active {
            color: @d_primary;
          }
        }
      }
    }
    &.el-submenu-closed > .el-submenu-list {
      display: none;
    }
    &.el-submenu-expand {
      > .el-submenu-title:after {
        transform: rotate(-90deg);
        -webkit-transform: rotate(-90deg);
      }
      > .el-submenu-list {
        display: block;
      }
    }
  }
}
